﻿using rmTest.Common;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace rmTest_2.Model
{
    public abstract class BaseVocalMimicry
    {
        /// <summary>
        /// 派别名称
        /// </summary>
        public string Name { get; set; }
        /// <summary>
        /// 人
        /// </summary>
        public People People { get; set; }
        /// <summary>
        /// 桌子
        /// </summary>
        public string Table { get; set; }
        /// <summary>
        /// 椅子
        /// </summary>
        public string Chair { get; set; }
        /// <summary>
        /// 扇子
        /// </summary>
        public string Fan { get; set; }
        /// <summary>
        /// 尺子
        /// </summary>
        public string Ruler { get; set; }

        /// <summary>
        /// 默认温度400°
        /// </summary>
        public double FireTemperature = 400;

        /// <summary>
        /// 打印表演开始了
        /// </summary>
        public void Start()
        {
            LogUtil.Instance.PrintLog(this.Name + "：节目开始了。。。。。");
        }

        public abstract void ImitateDogVoice();
        public abstract void ImitatePeopleVoice();
        public abstract void ImitateWindVoice();

        public virtual void ShowStart()
        {
            LogUtil.Instance.PrintLog(this.Name + "：这是开场白");
        }
        public virtual void ShowEnd()
        {
            LogUtil.Instance.PrintLog(this.Name + "：这是结束语");
        }

        public event Action activeHandler;
        public Action activeDelegate;

        public abstract void UniqueSkill(Action<string> action);
    }
}
